05. Debugging in ROS - roswtf

Debugging with roswtf

Previously, in the EKF Lab Lesson you ran rqt_graph to visualize the ROS graph corresponding to that package. Here is an example for rqt_graph from the previous 2D SLAM lab.

Often, you will find it useful to diagnose your system when it might not be behaving as you would expect. For such purposes, you can use roswtf. roswtf will examine and analyze the setup or the graph above, including any running nodes and environment variables, and warn you about any potential issues or errors.

Here is an output from the running of roswtf for the SLAM robot.

You can see the output contains 2 warnings - one regarding node subscribers not being connected and one regarding a node that has died. The significant outputs to look for are errors, but roswtf also outputs helpful warnings. Right now one can see some path related items and localization related items. Since no path generation or localization is going on, it’s okay to ignore these items.

roswtf performs a lot of checks. For example, it checks if all running nodes are connected and communicating properly, or if any nodes have died. You can explore more such checks here.

Further Resources: roswtf